﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Domain.Entities.Auditing;

namespace AdminManager.System
{
    /// <summary>
    /// 导航菜单
    /// </summary>
    [DisplayName("导航菜单")]
    public class Navigations: AuditedAggregateRoot<Guid>
    {
        /// <summary>
        /// 类型
        /// </summary>
        [DisplayName("导航类型")]
        public NavigationTypeEnums Type { get; set; }
        /// <summary>
        /// 菜单名称
        /// </summary>
        [DisplayName("菜单名称")]
        public string Name { get; set; }

        /// <summary>
        /// 父类id
        /// </summary>
        [DisplayName("菜单父类")]
        public string ParentId { get; set; }
        /// <summary>
        /// 排序
        /// </summary>
        [DisplayName("菜单排序")]
        public int Sort { get; set; }
        /// <summary>
        /// 图标
        /// </summary>
        [DisplayName("菜单图标")]
        public string Icon { get; set; }
        /// <summary>
        /// 路由名称
        /// </summary>
        [DisplayName("路由名称")]
        public string RouterName { get; set; }
        /// <summary>
        /// 路由地址
        /// </summary>
        [DisplayName("路由地址")]
        public string? RouterPath { get; set; }
        /// <summary>
        /// 组件地址
        /// </summary>
        [DisplayName("组件地址")]
        public string? ComponentPath { get; set; }
        /// <summary>
        /// 是否启用
        /// </summary>
        [DisplayName("是否启用")]
        public bool IsState { get; set; }
        ///// <summary>
        ///// 是否外链
        ///// </summary>
        //public bool IsUrl { get; set; }
        ///// <summary>
        ///// 是否缓存
        ///// </summary>
        //public bool IsKeepalive { get; set; }
        /// <summary>
        /// 操作安装列表
        /// </summary>
        [DisplayName("操作按钮")]
        public string Actions { get; set; }
        /// <summary>
        /// 重定向
        /// </summary>
        [DisplayName("菜单重定向")]
        public string Redirect { get; set; }
    }
}
